home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 081 / opus100b.arc / OMMMDOCS.ARC / OMMM.DOC < prev   
Text File  |  1987-04-18  |  48KB  |  1,067 lines

  1.  
  2.      ###########   ############  ####        #### ############
  3.          #############  #############  ##          ##  ############
  4.          ###       ###  ##        ###  ##          ##  ##         #
  5.          ##         ##  ##         ##  ##          ##  ##
  6.          ##         ##  ##        ###  ##          ##  ###
  7.          ##         ##  #############  ##          ##   ########## 
  8.          ##         ##  ############   ##          ##   ###########
  9.          ##         ##  ##             ##          ##           ###
  10.          ##         ##  ##             ##          ##            ##
  11.          ##         ##  ##             ##          ##            ##
  12.          ###       ###  ##             ###        ###  #         ##
  13.          #############  ##             ##############  ############
  14.           ###########  ####             ############   ########### 
  15.  
  16.  
  17.  
  18.  
  19.  
  20.      
  21.      
  22.      
  23.      
  24.      ###########    ##       ##    ##       ##    ##       ##
  25.          #############   ###     ###    ###     ###    ###     ###
  26.          ###       ###   ####   ####    ####   ####    ####   ####
  27.          ##         ##   ## ## ## ##    ## ## ## ##    ## ## ## ##
  28.          ##         ##   ##   #   ##    ##   #   ##    ##   #   ##
  29.          ##         ##   ##       ##    ##       ##    ##       ##
  30.          ##         ##   ##       ##    ##       ##    ##       ##
  31.          ##         ##   ##       ##    ##       ##    ##       ##
  32.          ##         ##   ##       ##    ##       ##    ##       ##
  33.          ##         ##   ##       ##    ##       ##    ##       ##
  34.          ###       ###   ##       ##    ##       ##    ##       ##
  35.          #############   ##       ##    ##       ##    ##       ##
  36.           ###########   ####     ####  ####     ####  ####     ####
  37.  
  38.  
  39.  
  40.           +--------------------------------------------------------+
  41.           |                      THE MATRIX:                       |
  42.           |       The world's first CyberPunk BBS Network          |
  43.           +--------------------------------------------------------+
  44.  
  45.                          Technical Reference Document        
  46.                          ----------------------------        
  47.                                                              
  48.                              NAVIGATING THE MATRIX           
  49.                                                              
  50.                                      using                   
  51.                                                              
  52.                      oMMM: The Opus Matrix Message Masher    
  53.                                                              
  54.                                                              
  55.                    THIS IS A TEST COPY: NOT FOR DISTRIBUTION 
  56.                    ----------------------------------------- 
  57.                                                              
  58.                                                              
  59.                                                              
  60.  
  61.                  The POLE's OPUS Computer Conversation System
  62.           (c)Copyright, 1987; Wynn Wagner III; All Rights Reserved
  63.                                   9 April 1987
  64.  
  65.  
  66.  
  67.  
  68.  
  69.                            Low-Budget Table of Contents
  70.                            ----------------------------
  71.  
  72.          Section
  73.          Number   Title                                      Page
  74.          -------------------------------------------------------------------
  75.          1........Upfront....................................following this
  76.  
  77.          2........Outbound Holding Area......................after section 1
  78.  
  79.          3........Methods....................................after section 2
  80.  
  81.          4........What's in the holding area.................after "Methods"
  82.  
  83.          5........Simple oMMM................................after section 4
  84.  
  85.          6........The indirect approach......................after section 5
  86.  
  87.          7........The control file...........................after section 6
  88.  
  89.          8........Using oMMM.................................after section 7
  90.  
  91.          9........What about Opus?...........................after section 7
  92.  
  93.         10........CyberPunk?.................................at the very end
  94.  
  95.  
  96.  
  97.  
  98.         Original oMMM (now a collectors item) was written by Wynn Wagner III,
  99.         otherwise known as "Arrogant Hacker I"
  100.  
  101.         The program was tweaked/rewritten/cleaned-up/added-to under the
  102.         care of Bob Hartman, otherwise known as "Arrogant Hacker II"
  103.  
  104.                              +-----------------------------------------------+
  105.                              |                                               |
  106.                              | "Hackers - Heroes of the Computer Revolution" |
  107.                              | The story of the whiz kids whose irreverence, |
  108.                              | idealism, and sheer genius changed the world. |
  109.                              |                                               |
  110.                              |        - From the cover of a Steven Levy book |
  111.                              |                                               |
  112.                              +-----------------------------------------------+
  113.                              |                                               |
  114.                              | And some people thought that I would dislike  |
  115.                              | being called an "arrogant hacker"             |
  116.                              |                                               |
  117.                              |           - Bob Hartman, "Arrogant Hacker II" |
  118.                              |                                               |
  119.                              +-----------------------------------------------+
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126. UPFRONT                                                                   oMMM
  127. ------------------------------------------------------------------------------
  128.  
  129.  
  130.                                +---------------------------------------------+
  131.                                |                                             |
  132.                                | Technology itself has changed.              |
  133.                                |                                             |
  134.                                | Not for us the giant steam-snorting wonders |
  135.                                | of the past: the Hoover Dam, the Empire     |
  136.                                | State Building, the nuclear power plant.    |
  137.                                |                                             |
  138.                                | Eighties tech sticks to the skin, responds  |
  139.                                | to touch: the personal computer, the Sony   |
  140.                                | Walkman, the portable telephone, the soft   |
  141.                                | contact lens."                              |
  142.                                |                                             |
  143.                                |                           - Bruce Sterling  |
  144.                                |                                             |
  145.                                +---------------------------------------------+
  146.  
  147.  
  148.  
  149.          The Matrix is an international connection between individual
  150.          system operators.  Other system operators may be getting
  151.          access to this "network" using various pieces of software
  152.          including Fido<tm> and Seadog<tm>.
  153.  
  154.          One method for Opus sysops to use the matrix is a program
  155.          call oMMM: the Opus Matrix Message Masher.
  156.          
  157.          oMMM creates the `.OUT' and `.FLO' files used by Opus-Cbcs
  158.          for outbound matrix traffic.
  159.  
  160.          Actually, it combines the functionality of such programs
  161.          as Arcmail[(c)SEA] with the "generating packets" rigmarole
  162.          previously internal to programs putting messages onto
  163.          the IFNA<tm>-type network.
  164.  
  165.          Opus<no_tm> Outbound (or "OO" for sort) is compatible but not
  166.          identical to existing IFNA<tm>-type network software.  Please
  167.          do not just assume you understand such things as routing just
  168.          because you are familiar with other<tm> systems.
  169.  
  170.          This document is a combination How-To on the oMMM program
  171.          as well as a technical reference document on Opus outbound
  172.          matrix traffic.  If you are primarily interested in oMMM,
  173.          please have some patience if things get too technical.
  174.  
  175.          For the most part, the target audience of this document 
  176.          consists of system operators who are already familiar with
  177.          the operation of the IFNA<tm>-type network.  By the time
  178.          you read this, it's possible other documentation will have
  179.          been written... documentation that takes the abject novice 
  180.          into account.  What you are currently reading is NOT 
  181.          such a document.  Sorry.
  182.  
  183.          This document does not address the issue of getting a new
  184.          system hooked up to the matrix.
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191. OUTBOUND HOLD AREA                                                        oMMM
  192. ------------------------------------------------------------------------------
  193.  
  194.  
  195.                                +---------------------------------------------+
  196.                                |                                             |
  197.                                |  I think it might be in the basement -      |
  198.                                |  I'll check upstairs.                       |
  199.                                |                                             |
  200.                                |                                -M.C. Escher |
  201.                                |                                             |
  202.                                +---------------------------------------------+
  203.  
  204.  
  205.  
  206.          Pending outbound traffic is stored in a special sub-directory
  207.          called a HOLD AREA.
  208.  
  209.          To be on the safe side, you should make this sub-directory
  210.          just for the holding area.  In other words, it is possible
  211.          (or likely) that Opus will get confused if it finds other
  212.          material in the sub-directory.  Opus considers everything in
  213.          that area to be "fair game" as far as creating, deleting,
  214.          and appending is concerned.
  215.  
  216.  
  217.  
  218.  
  219.  
  220. METHODS                                                                   oMMM
  221. ------------------------------------------------------------------------------
  222.  
  223.                                +---------------------------------------------+
  224.                                |                                             |
  225.                                | Whenever a system becomes completely        |
  226.                                | defined, some damn fool discovers something |
  227.                                | that either abolishes the system or expands |
  228.                                | it beyond recognition.                      |
  229.                                |                                             |
  230.                                |                      - Finagle's Fifth Rule |
  231.                                |                        The Book of Rules    |
  232.                                |                                             |
  233.                                +---------------------------------------------+
  234.  
  235.          Other<tm> programs which do IFNA<tm>-type network mail have
  236.          built-in routines which build bundles ( or "generate packets").
  237.          These bundles are sometimes built and un-built several times
  238.          before they are transmitted.
  239.  
  240.          Opus does not contain any internal bundling routines.  You have
  241.          to use an external program, such as oMMM.  The reason for this
  242.          is simple: MEMORY.  To do bundling correctly takes vast amounts
  243.          of memory, and Opus just does not want to share that much
  244.          memory with a bundler.
  245.  
  246.          There is another reason for keeping it external: clever 
  247.          programmers can write their own bundling programs to handle
  248.          whatever special cases might arrise.
  249.  
  250.          The final reason is speed because bundles are built once.
  251.          Bundles are kept current.  Opus wants to be ready for matrix
  252.          traffic at any time.  Because of this, there is no facility
  253.          provided for un-doing a bundle (ie. separating a bundle into
  254.          the individual messages).  A special un-bundler utility could
  255.          be written for such a thing if anybody is inflicted with
  256.          the need.
  257.  
  258.  
  259.  
  260.  
  261.  
  262. WHAT'S IN THE HOLDING AREA                                                oMMM
  263. ------------------------------------------------------------------------------
  264.  
  265.  
  266.          You can expect to find three kinds of files being stored
  267.          in your holding area:
  268.  
  269.                   OUT files ... Normal bundles of messages waiting
  270.                                 to be transmitted.  The extension may
  271.                                 actually be OUT, DUT, HUT, or CUT.
  272.  
  273.                   FLO files ... A list of files waiting to be transmitted.
  274.                                 This file contains the names of all the
  275.                                 files to be sent as "file attaches" as
  276.                                 well as any archived bundle files built
  277.                                 by the oMMM program.  It is a standard,
  278.                                 garden-variety text file with only one
  279.                                 file per line (NO WILDCARDS).
  280.  
  281.                                 The "#" is a special flag that can appear
  282.                                 as the first character of a line.  If
  283.                                 a line begins with a pound sign, the file
  284.                                 listed on that line will be truncated
  285.                                 if it is successfully transmitted.  This
  286.                                 is primarily for use with archived bundles.
  287.                                 They need to be "null'ed" after they are
  288.                                 sent.
  289.  
  290.                                 Flow files can have these extensions: FLO,
  291.                                 DLO, HLO, and CLO.
  292.  
  293.                   MO# files ... Most sysops would call these "ARCMAIL" 
  294.                                 files.  They are bundles of messages which
  295.                                 have been compressed using a program such
  296.                                 as ARCE or ARC (Mail Outbound).
  297.  
  298.                                 The file extension will be "MO" followed by
  299.                                 a number (0-9).  The characters stand for
  300.                                 MATRIX OUTBOUND and do not refer to any
  301.                                 day of the week.  oMMM does not produce any
  302.                                 "TU#"..."SU#" files.
  303.  
  304.                                     NOTE: Opus supports a 12-bit LZ 
  305.                                           compression method. Some programs 
  306.                                           (eg. PKARC) use a 13-bit method.
  307.                                           They will require far to much 
  308.                                           memory to run and should not be 
  309.                                           used for archiving mail.
  310.  
  311.  
  312.  
  313.  
  314. SIMPLE oMMM                                                               oMMM
  315. ------------------------------------------------------------------------------
  316.  
  317.                                +---------------------------------------------+
  318.                                |                                             |
  319.                                |  The concept is simply staggering -         |
  320.                                |  pointless - but staggering!"               |
  321.                                |                                             |
  322.                                |                                -The Doctor  |
  323.                                |                                             |
  324.                                +---------------------------------------------+
  325.  
  326.  
  327.          The oMMM program words in two phases.
  328.  
  329.          In its simplest form, oMMM will generate an OUT file for
  330.          every system which has traffic in your matrix message area.
  331.  
  332.          There is simply no concept of "routing" at this point.  If
  333.          a system has a message, there will be an OUT file.
  334.  
  335.          This is a "no-route" kind of operation.  The OUT files will
  336.          eventually be transmitted directly to the destination without
  337.          going through any intermediate system such as a "host" or "hub".
  338.  
  339.          Every time you execute it, oMMM goes through this stage.
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346. THE INDIRECT APPROACH                                                     oMMM
  347. ------------------------------------------------------------------------------
  348.  
  349.                                +---------------------------------------------+
  350.                                |                                             |
  351.                                | A man's best friend is his dogma.           |
  352.                                |                                             |
  353.                                |                                  -Anonymous |
  354.                                |                                             |
  355.                                +---------------------------------------------+
  356.  
  357.  
  358.  
  359.          ROUTING IN A NUTSHELL
  360.          ---------------------
  361.  
  362.          After all of the bundles have been generated, you can use a
  363.          control file to send messages through a "host" or "hub" or
  364.          some other intermediate system.
  365.  
  366.          In Opus, all indirect transmissions use archived message files.
  367.          We will be creating an archive of routed files.  Here is a sample
  368.          control file command:
  369.  
  370.                   ArcTo 136/12 136/ALL
  371.  
  372.          This command tells oMMM to build an ARC type file for 136/12 
  373.          and will include the OUT files for any other system in net 136.
  374.  
  375.                   TechNote: The "OUT" extension is changed to "PKT" when
  376.                             the messages are archived.
  377.  
  378.          You can specify several systems in an ArcTo statement:
  379.  
  380.                   ArcTo 124/0 130/14 130/20 105/ALL
  381.  
  382.          This command will build an ARC file for 124/0.  The file will
  383.          contain any existing OUT files for 124/0, 130/14, 130/20 and
  384.          all systems in net 105.
  385.  
  386.  
  387.  
  388.  
  389.  
  390.          FLAVORS OF ROUTING
  391.          ------------------
  392.  
  393.          "Arcto" is just one of several words you can use to affect
  394.          the behavior of outbound matrix traffic.
  395.  
  396.  
  397.  
  398.          To hold archived mail for pickup by the other system, substitute
  399.          the word "HOLD" for the word "ARCTO".  For example...
  400.  
  401.                   Hold 141/491 161/ALL
  402.  
  403.          This hold command puts messages for 141/491 and all systems in
  404.          net 161 into an archive and marks the whole thing as "hold for
  405.          pickup by 141/491".
  406.  
  407.          IMPORTANT:  The "hold" statement stands by itself.  In other
  408.                      words, you don't use hold with another command such
  409.                      as "ArcTo."  Instead, "hold" REPLACES the "ArcTo"
  410.                      statement.  It does everything that "ArcTo" does
  411.                      with the additional feature of marking the resulting
  412.                      bundle as HOLD FOR PICKUP.
  413.  
  414.          HINT:       In the following list, the words ARCTO, HOLD, and
  415.                      CRASH are considered the basic statements.  In most
  416.                      cases, you can lead a fruitful/meaningful life with
  417.                      nothing more complicated than those three words.
  418.                      All of the other words are for advanced usage or
  419.                      for special circumstances.  (K.I.S.S.!)
  420.  
  421.  
  422.  
  423.  
  424.          Here is a list of commands that oMMM understands:
  425.  
  426.                 SCHED..... Starts a schedule.  All oMMM statements between
  427.                            this statement and the next SCHED statement will
  428.                            be executed if the schedule tag matches the one
  429.                            given on the command line.  tag is a character
  430.                            that can be in upper or lower case.
  431.  
  432.                                     SYNTAX:   Sched tag
  433.  
  434.        
  435.                 ARCTO..... Send as regular mail during pre-set schedules.
  436.                            This command actually ARC's up the packets just
  437.                            like ARCmail would do, so you must be sure that
  438.                            the receiving system either has ARCmail that runs
  439.                            at regular intervals, or is running Opus 1.00 or
  440.                            higher.
  441.  
  442.                                     SYNTAX:   Arcto destination [routelist]
  443.  
  444.                                     EXAMPLES: Arcto 124/0 124/ALL
  445.                                               Arcto 135/1
  446.  
  447.  
  448.                 POLL...... This creates a dummy .OUT file if there are no
  449.                            files existing for the given node that are not
  450.                            on hold. If there are files in the holding area 
  451.                            which are going to the given node, and they are 
  452.                            not on hold, then the POLL statement will do 
  453.                            nothing.
  454.  
  455.                                     SYNTAX: Poll destinations
  456.  
  457.  
  458.                 LEAVE..... Mark all packets to the listed nodes such that
  459.                            Opus will not attempt to send them.  Use the -z
  460.                            command line option of oMMM to make the packets
  461.                            be recognized by Opus for future sending.  Use
  462.                            this option with extreme care!
  463.  
  464.                                     SYNTAX: Leave destinations
  465.  
  466.  
  467.                 SEND...... If a node in the destination list has a packet     
  468.                            that has been marked as a "do not send" packet 
  469.                            by using LEAVE, then make it so that the packet 
  470.                            can once again be sent.
  471.  
  472.                                     SYNTAX: Send destinations
  473.  
  474.                                     EXAMPLE to do local schedule with some
  475.                                             extra nodes:
  476.  
  477.                                             ; First mark all nodes as no-send
  478.                                             Leave All
  479.                                             ; Now send to our net and list
  480.                                             Send Ournet 132/101 124/108
  481.  
  482.  
  483.                 DOCRASH... If a node in the destination list has a packet     
  484.                            that has been marked as a "do not send" packet 
  485.                            by using LEAVE, and the packet is a crashmail
  486.                            packet, then that packet is marked for sending.
  487.  
  488.                                     SYNTAX: DoCrash
  489.  
  490.  
  491.                 HOLD...... Prepare the archive, but disallow an outgoing
  492.                            phone call.  The archive will be held for the
  493.                            other system to pickup. This has the same comment
  494.                            as the ARCTO statement - ie the receiver must have
  495.                            some way to unARC the packets.
  496.  
  497.                                     SYNTAX: Hold destination [routelist]
  498.  
  499.  
  500.                 ONEHOLD... This call is identical to the above call except
  501.                            that all nodes listed have the packets held
  502.                            individually.  This allows statements to be used
  503.                            in a program like XlatList<tm> that will hold for
  504.                            a list of nodes.
  505.  
  506.                                     SYNTAX: OneHold destinations
  507.  
  508.  
  509.                 CRASH..... Send to a system which supports continuous
  510.                            mail.  Such systems include other Opus systems
  511.                            and Seadog (v4.00).  Again, the receiver must have
  512.                            a way to unARC the packets.
  513.  
  514.                            In the Opus control file, you have some control
  515.                            over continuous mail.  See the part dealing with
  516.                            "Matrix send local only".
  517.  
  518.                            Note that Opus "crash mail" is compatible but
  519.                            not identical to so-called crash mail in other<tm>
  520.                            systems.
  521.  
  522.                                     SYNTAX: Crash destination [routelist]
  523.  
  524.  
  525.                 ONECRASH.. This call is identical to the above call except
  526.                            that all nodes listed have the packets crashed
  527.                            individually.  This allows statements to be used
  528.                            in a program like XlatList<tm> that will crash to
  529.                            a list of nodes.
  530.  
  531.                                     SYNTAX: OneCrash destinations
  532.  
  533.  
  534.                 UNCRASH... Any packets to the nodes in the list that are
  535.                            marked as CRASH are marked normal.
  536.  
  537.                                     SYNTAX: UnCrash destinations
  538.  
  539.  
  540.                 UNHOLD.... Any packets to the nodes in the list that are
  541.                            marked as HOLD are marked normal.
  542.  
  543.                                     SYNTAX: UnHold destinations
  544.  
  545.  
  546.                 NORMCRASH. Any packets to the nodes in the list are sent
  547.                            as CRASH type packets that are compatible with
  548.                            other <tm> software.  This basically means that
  549.                            the packet is not ARC'd.
  550.  
  551.                                     SYNTAX: NormCrash destinations
  552.  
  553.  
  554.                 NORMHOLD.. Any packets to the nodes in the list are sent
  555.                            as HOLD type packets that are compatible with
  556.                            other <tm> software.  This basically means that
  557.                            the packet is not ARC'd.
  558.  
  559.                                     SYNTAX: NormHold destinations
  560.  
  561.  
  562.  
  563.  
  564.  
  565.  
  566.  
  567. THE CONTROL FILE                                                          oMMM
  568. ------------------------------------------------------------------------------
  569.  
  570.                                +---------------------------------------------+
  571.                                |                                             |
  572.                                | There are two kinds of people in the world: |
  573.                                | Those with loaded guns, and those who dig.  |
  574.                                | You Dig.                                    |
  575.                                |                                             |
  576.                                |           - Clint Eastwood                  |
  577.                                |           'The Good, The Bad, and The Ugly' |
  578.                                |                                             |
  579.                                +---------------------------------------------+
  580.  
  581.  
  582.  
  583.  
  584.          CONTENTS OF A CONTROL FILE
  585.          --------------------------
  586.  
  587.          The oMMM control file is a text file.
  588.  
  589.          You can use a semi-colon (";") as a comment character.
  590.          oMMM will ignore everything beyond a semi-colon on a line.
  591.  
  592.          Put the word ARCTO in the far left column.  That's followed
  593.          by the destination board plus 0 or more other systems.
  594.  
  595.          Examples:
  596.  
  597.                   arcto 161/2          ; just archive 162/2's stuff
  598.                   arcto 100/0 100/ALL  ; "host route" net 100
  599.  
  600.  
  601.  
  602.  
  603.          DO WHAT I SAY, WHEN I SAY IT
  604.          ----------------------------
  605.  
  606.          You should consider the control file as a PROCEDURAL file. 
  607.          In other words, oMMM will act on every statement as it comes
  608.          to it.  The control file is a list which says "Do this, then do
  609.          that, then do whatever."  Here's an example of how you can use
  610.          this kind of operation:
  611.  
  612.                   arcto 130/12 130/20
  613.                   arcto 130/0  130/ALL
  614.  
  615.          There.  Material for 130/20 and 130/12 will go to 130/12.  Then
  616.          everything else to net 130 will be "host routed".  The first
  617.          statement takes care of 130/12 and 130/20.  By the time oMMM gets
  618.          to the second line, material for those two systems no longer
  619.          exist as individual OUT files.
  620.  
  621.  
  622.  
  623.          SPECIAL WORDS
  624.          -------------
  625.  
  626.          In addition to "ALL" as a special "node number", the words "OTHERS",
  627.          and "OURNET" can be used as special "net numbers".  They mean 
  628.          networks other than our own and your own network respectively.  If 
  629.          your net has an outbound system ("Host" or "Hub") then you can route 
  630.          out-of-town traffic to that system like this:
  631.  
  632.                   arcto 124/0 OTHERS
  633.  
  634.          The command with "others" in it should probably be one of the
  635.          last commands in your control file.  Remember, this is a
  636.          procedural file.  Take care of your specific routing, then do
  637.          the "others" command as a kind of "clean up" command.
  638.  
  639.          NOTE: If you are using XlatList<tm> to create your oMMM control file
  640.                you will find that it will not pass the keyword ALL through
  641.                to the control file when it is used on an ArcTo line (or any
  642.                other line with other node numbers).  In this instance, you
  643.                should use the keyword WORLD which has the same meaning as
  644.                the keyword ALL.
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651. USING oMMM                                                                oMMM
  652. ------------------------------------------------------------------------------
  653.  
  654.  
  655.                                +---------------------------------------------+
  656.                                |                                             |
  657.                                | No matter what you do today, nor where you  |
  658.                                | go, nor whom you meet, there are at least a |
  659.                                | billion red Chinese who don't give a damn.  |
  660.                                |                                             |
  661.                                |                               - Dan Jenkins |
  662.                                |                                             |
  663.                                +---------------------------------------------+
  664.  
  665.  
  666.  
  667.          OPERATIONAL OVERVIEW
  668.          --------------------
  669.  
  670.          You must have the program ARCA.COM available somewhere 
  671.          on your path.
  672.  
  673.          The oMMM program needs seven pieces of information from you.
  674.  
  675.                   SWITCHES     ... the optional switches that can be on the
  676.                                    oMMM command line. The available switches
  677.                                    are:
  678.  
  679.                                    -d to disable the conversion of Opus dates
  680.                                    back to older Fido<tm> dates.  This should
  681.                                    not be used unless all connections are
  682.                                    made with other Opus nodes.
  683.  
  684.                                    -z to ZAP the entire holding area so that
  685.                                    all packets that the LEAVE statement had
  686.                                    to modify are returned to normal.
  687.  
  688.                                    -n to disallow forwarding of messages for
  689.                                    other boards.  Note that you cannot use
  690.                                    this switch if you are a host or hub!
  691.  
  692.                                    -------------------------------------------
  693.  
  694.                   SCHEDULE TAG ... the character corresponding to the schedule
  695.                                    which oMMM should use in the control file.
  696.  
  697.                                    To specify the schedule tag, use '-s'
  698.                                    followed by the character for the TAG.
  699.  
  700.                                    If you don't specify a schedule tag, oMMM
  701.                                    will assume no schedule and process any
  702.                                    statements in the control file that are
  703.                                    before the first SCHED statement.
  704.  
  705.                                    -------------------------------------------
  706.  
  707.                   INFO PATH    ... the sub-directory that contains the
  708.                                    file MAIL.SYS.
  709.  
  710.                                    To specify the info path, use '-i'
  711.                                    followed by the name of the sub-directory.
  712.  
  713.                                    If you don't specify an info path, oMMM
  714.                                    will use the current default sub-directory.
  715.  
  716.                                    -------------------------------------------
  717.  
  718.                   HOLD PATH    ... the sub-directory used as the Opus
  719.                                    outbound hold area ("OO-HA" for short).
  720.  
  721.                                    To specify the hold path, use '-h'
  722.                                    followed by the name of the sub-directory.
  723.  
  724.                                    If you don't specify a hold path, oMMM
  725.                                    will complain at you loudly and will
  726.                                    refuse to continue.  (Dos ERRORLEVEL=1)
  727.  
  728.                                    -------------------------------------------
  729.  
  730.                   MESSAGE PATH ... the sub-directory where your matrix
  731.                                    messages are kept.
  732.  
  733.                                    You only need to use this item if you
  734.                                    are doing something "non-standard".  If
  735.                                    you are taking messages from your normal
  736.                                    matrix message area, do not declare
  737.                                    any message path.
  738.  
  739.                                    To specify the message path, use '-m'
  740.                                    followed by the name of the sub-directory.
  741.  
  742.                                    If you don't specify a message path, 
  743.                                    oMMM will use the path declared in
  744.                                    the info file, MAIL.SYS.
  745.  
  746.                                    -------------------------------------------
  747.  
  748.                   PRE-MESSAGE SCAN
  749.                   CONTROL FILE ... the name of the file containing routing
  750.                                    commands to be executed BEFORE message
  751.                                    scanning takes place!
  752.  
  753.                                    To specify the pre-message scan control
  754.                                    file name, use '-p' followed by the name
  755.                                    of the control file.
  756.  
  757.                                    If you don't specify a pre message scan
  758.                                    control file, no changes will be made to
  759.                                    the holding area before messages get
  760.                                    scanned.
  761.  
  762.                                    This command is useful for systems that
  763.                                    do a lot of 'state changes' during the
  764.                                    day.  For example, a system may want to
  765.                                    Hold mail in an archive for a node at
  766.                                    some times, and send it at other times. In
  767.                                    this scenario it is very possible that
  768.                                    oMMM could create a file attach message,
  769.                                    then have that archive placed into the
  770.                                    actual archive when oMMM was run again.
  771.                                    This is undesirable behavior which can
  772.                                    be overcome using a pre-control file.  For
  773.                                    example, you have just executed a Hold
  774.                                    statement for a node which places a file
  775.                                    attach message in a .HUT file.  Now you
  776.                                    decide to send to that node by using the
  777.                                    UnHold verb, that places the file attach
  778.                                    message in a .OUT file.  Finally, the
  779.                                    archive was not sent out, so you once
  780.                                    again want to hold for the node, normally
  781.                                    you would use Hold to do this, but that
  782.                                    will packet up the file attach message
  783.                                    that is still in the .OUT file.  The
  784.                                    solution is to use a pre-scan control file
  785.                                    to NormHold the node, then in the normal
  786.                                    routing file use Hold to archive the new
  787.                                    messages (the .HUT will still contain the 
  788.                                    file attach message and it will not be
  789.                                    archived), and after the Hold is executed,
  790.                                    an UnHold can be executed if necessary.
  791.                                    
  792.                                    This sounds a lot more complex than it is.
  793.                                    Simply use a pre-scan control file to get
  794.                                    your holding area into the same state all
  795.                                    the time before the real routing gets done.
  796.                                    This will save hours of time trying to
  797.                                    determine what oMMM will do under certain
  798.                                    conditions. Eventually this may also be
  799.                                    used to force oMMM to un-oMMM packets.
  800.  
  801.  
  802.                                    -------------------------------------------
  803.  
  804.                   CONTROL FILE ... the name of the file containing routing
  805.                                    commands.
  806.  
  807.                                    To specify the control file name, use '-c'
  808.                                    followed by the name of the routing
  809.                                    control file.
  810.  
  811.                                    If you don't specify a routing control
  812.                                    file, no routing will be done.
  813.  
  814.  
  815.          Example:
  816.  
  817.                   oMMM -hc:\opus\outbound
  818.  
  819.                   oMMM -hc:\ob -cc:\routes.ctl
  820.  
  821.  
  822.          One final note about using oMMM.  It may sometimes seem like
  823.          a slow-running program.  I can promise you that it is not.
  824.          Internally, it is screaming out instructions to your computer
  825.          as fast as possible.  Remember: oMMM combines the functionality
  826.          of an "arcmail" program with the "generating packet" of other<tm>
  827.          matrix systems.  With oMMM, you only have to generate those
  828.          bundles once... when the archives are built.
  829.  
  830.  
  831.  
  832.  
  833.  
  834. REFERENCE STUFF: FILE NAMES                                               oMMM
  835. ------------------------------------------------------------------------------
  836.  
  837.                                +---------------------------------------------+
  838.                                |                                             |
  839.                                | "You bring the light,                       |
  840.                                | 'n' I'll bring the tunnel."                 |
  841.                                |                                             |
  842.                                |                               - H. Nehgila  |
  843.                                |                                             |
  844.                                +---------------------------------------------+
  845.  
  846.  
  847.          TECHIE ALERT
  848.          ------------
  849.  
  850.          This section is for reference... for the technical and/or
  851.          intensely curious.
  852.  
  853.  
  854.  
  855.  
  856.          FILE NAMES: Nodes
  857.          -----------------
  858.  
  859.          File nodes (the file name without the extension) are made
  860.          from the destination's net and node.  Each part of the matrix
  861.          address is converted to a four-digit hex (base 16) number.
  862.  
  863.          For example, an OUT file to 124/108 would be "007C006C.OUT".
  864.          Net 124 is "007C" in base 16.  The node 108 is "006C" when
  865.          done in hex.
  866.  
  867.  
  868.  
  869.  
  870.  
  871.          FILE NAMES: Extensions
  872.          ----------------------
  873.  
  874.          File extensions on Hold Area files have a meaning to Opus.
  875.  
  876.                   .OUT ... a regular TYPE-2 outbound bundle
  877.  
  878.                   .CUT ... an TYPE-2 bundle containing CRASH messages
  879.  
  880.                   .HUT ... an TYPE-2 bundle on hold.  Opus will not try
  881.                            to call this system, but will make it available
  882.                            should the other system call.
  883.  
  884.                   .DUT ... internally generated unrouted bundle. (D="direct")
  885.  
  886.  
  887.  
  888.                   .FLO ... a regular flow file
  889.  
  890.                   .CLO ... a flow file for CRASH delivery
  891.  
  892.                   .HLO ... a flow file being held for pickup
  893.  
  894.  
  895.          There is nothing in Opus to prevent you from using a text
  896.          editor to create a FLO outbound file.  
  897.          
  898.          It is *NOT* necessary for you to create a "file attach message".  
  899.          Opus will automatically generate a "dummy empty bundle" during 
  900.          the actual connection to simulate the attach message.
  901.  
  902.  
  903.  
  904.  
  905.  
  906.          FILE NAMES: archives
  907.          --------------------
  908.  
  909.          Using the routing system of oMMM, you will end up with archives
  910.          created by the program ARCA.  The names are a little peculiar.
  911.          They are generated by taking the difference between the sender's
  912.          and the receiver's matrix address.
  913.  
  914.          For example, if 136/1986 were to send mail to 105/6, the archive
  915.          file name would work like this:
  916.  
  917.                   136 - 105  =    31 ..... 001F
  918.  
  919.                   1986-   6  =  1980 ..... 07BC
  920.  
  921.                   Filename ............... 001F07BC.MO1
  922.  
  923.          If 105/6 has something to say back to 136/1986, here's how
  924.          the file name would be calculated:
  925.  
  926.                   105 - 136  =   -31 ..... FFE1
  927.  
  928.                     6 - 1986 = -1980 ..... F844
  929.  
  930.                   Filename ............... FFE1F844.MO2
  931.  
  932.          The use of this method is an attempt to stay compatible with
  933.          existing IFNA<tm>-type network message archive programs.
  934.  
  935.          The extensions ("MO1" and "MO2") are almost meaningless.  The
  936.          first to characters stand for ARCHIVED MESSAGES.  The digit
  937.          is a counter.  When oMMM sees that Opus has delivered a 
  938.          previous archive such as "MO1", it will increment the next
  939.          archive to "MO2" to help avoid over-writes on the receiving
  940.          system.  The numbers go from 1 to 9 then start at 1 again.
  941.  
  942.          When oMMM is used to put bundles into an archive, it generates
  943.          a dummy message in a bundle with ".DUT" for the extension.
  944.  
  945.                            To:      "SysOp"  
  946.                            From:    "OPUS Matrix Message Masher"
  947.  
  948.          It also generates (or appends) a FLO file for the file attachment.
  949.  
  950.  
  951.                   
  952.  
  953.  
  954.  
  955.  
  956.  
  957.  
  958.  
  959.  
  960.  
  961.  
  962. WHAT ABOUT OPUS?                                                          oMMM
  963. ------------------------------------------------------------------------------
  964.  
  965.  
  966.          Opus will try to send material (not marked ".HLO" or ".HUT").
  967.          In other words, it assumes that you and your bundle program
  968.          know what you want.
  969.  
  970.          Currently there is no concept of a "schedule" in Opus.  It will
  971.          try to dial numbers when it feels like dialing.
  972.  
  973.          Also, there is no concept of a system that is unable to do
  974.          continuous mail.  Fido<tm> systems, for example, are completely
  975.          unable to receive mail except during a schedule.  Old Seadog<tm>
  976.          systems are not able to hold bundles and files for pickup 
  977.          except during a scheduled network event.
  978.  
  979.          There is definitely a need for a program that can use the
  980.          "raw" nodelist information ("NODELIST.###" file) to produce 
  981.          a routing control file to assure that material headed for
  982.          older systems is marked HOLD.  Otherwise, Opus will try to
  983.          call those systems.
  984.  
  985.          Here's the Real Bummer: the oMMM program knows diddley-squat
  986.          about such nodelist flags as "#CM:".  oMMM will not put anything
  987.          on hold.
  988.  
  989.          In the Opus control file, you can declare such things as your
  990.          matrix hold area.  There are flags that say SEND NOTHING (make
  991.          no outgoing calls) and LOCAL ONLY (make calls only to those
  992.          systems whose "cost" field is zero).
  993.  
  994.          The main point is that Opus considers the hold area current.
  995.  
  996.  
  997.  
  998.  
  999.  
  1000.  
  1001.  
  1002.  
  1003. CYBERPUNK?                                                                oMMM
  1004. ------------------------------------------------------------------------------
  1005.  
  1006.                                +---------------------------------------------+
  1007.                                |                                             |
  1008.                                | Cyberpunk comes from the realm where the    |
  1009.                                | computer hacker and the rocker overlap, a   |
  1010.                                | cultural Petri dish where writhing gene     |
  1011.                                | lines splice. Some find the results bizarre,|
  1012.                                | even monstrous; for others this integration |
  1013.                                | is a powerful source of hope.               |
  1014.                                |                                             |
  1015.                                |                            - Bruce Sterling |
  1016.                                |                                             |
  1017.                                +---------------------------------------------+
  1018.  
  1019.  
  1020.          This has nothing to do with oMMM, but because I called The
  1021.          Matrix "the world's first CyberPunk BBS Network" I'd better
  1022.          explain the term.
  1023.  
  1024.          CyberPunk is a kind of science fiction.
  1025.  
  1026.          Characters in such works have been described in several
  1027.          ways.  Here are a couple:
  1028.  
  1029.                   * Low-budget high tech
  1030.  
  1031.                   * Miami Vice with lasers
  1032.  
  1033.                   * Ray-gun gothic
  1034.  
  1035.          The street people in such books are normally the techies.
  1036.          It can conjure up images of that broken-down freighter in
  1037.          the original Star Wars if you aren't careful.
  1038.  
  1039.          The TV show MAX HEADROOM is CyberPunk.
  1040.  
  1041.          One repeating theme is this: surrounded by computers and
  1042.          equiped with the knowledge of how to use them, CyperPunk
  1043.          characters often struggle to maintain a sense of humanity.
  1044.          If there is to be any kind of struggle, that particular
  1045.          one sounds more worthy of my time than others.
  1046.  
  1047.          Finally, a short conversation from Gibson's "Johnny
  1048.          "Mnemonic"...
  1049.  
  1050.                   "Who's Lo Tek?"
  1051.  
  1052.                   "Not us, boss."
  1053.  
  1054.          Lo Tek is just a gang in the book, of course.  But it's
  1055.          a term you may run across from time to time when you hook
  1056.          into The Matrix: The World's First CyberPunk BBS Network.
  1057.  
  1058.  
  1059.  
  1060.                                                                Wynn
  1061.  
  1062.  
  1063.  
  1064.  
  1065.                                       ###
  1066.  
  1067.